package com.css.dzj.dzjjcss.modules.publicity.service;

import com.css.dzj.dzjjcss.modules.publicity.entity.PublicityEntity;
import com.querydsl.core.QueryResults;
import org.springframework.data.domain.Pageable;

import java.util.List;

/**
 * 公式通报接口
 * @author wt
 * @date 2020\3\24 0024
 */
public interface PublicityService {

    /**
     * 暂存公示通报信息
     */
    void add(PublicityEntity pEntity);

    /**
     * 发布在新建的时候公示通报信息
     */
    void saverelease(PublicityEntity pEntity);
    /**
     * 修改公示通报信息
     */
    void update(PublicityEntity pEntity);

    /**
     * 通过id查询公示通报信息
     */
    PublicityEntity findById(String id);

    /**
     * 分页查询公示通报信息
     */
    QueryResults<PublicityEntity> queryPage(Pageable pageable);

    /**
     * 删除公示通报信息
     */
    Boolean delete(String id);

    /**
     * 多条件分页查询公示通报信息
     */
    QueryResults<PublicityEntity> getGstbList(String createUser, String title, String createUserUnit, String status, String releaseStartTime, String releaseEndTime, Pageable pageable);

    /**
     * 向外提供多条件分页查询公示通报信息
     */
    List termList(String title, String publicType, String isPublic);
    /**
     * 向外提供分页查询所有公示通报信息
     */
    List pageList(String publicType, String isPublic);
}
